Microprocessors, controllers and other semiconductor components communicate to each other and to external devices through pins. In traditional computer architecture, each signal is allocated a separate pin to the component. Thus, when a new design specifies a new signal, a new pin has to be added to the component. When the total number of pins reaches a certain number, the existing die size of the semiconductor component can no longer support all of the pins. At that point, the die size of the component has to be increased to accommodate the additional pins. However, the increase in die size leads to higher fabrication costs because the number of components produced from a given wafer size decreases. The increase in die size also leads to higher fabrication costs because the yield as measured by percentage of acceptable components decreases with increasing die size.
For semiconductor components with high market values, the additional fabrication costs incurred by use of a larger die size is not significant. However, for semiconductor components with lower market values, the additional fabrication costs from a larger die size has a more significant impact in proportional terms.
Thus, what is needed is a method and apparatus which allows for sharing of a pin between different functions to reduce the total number of pins required and thus eliminating the need for a larger die size. What is also needed is a method and apparatus which also allows the pin to transmits signals of different types thus reducing the total number of pins required and eliminating the need for a larger die size.